package base;

import java.util.Arrays;
import java.util.Scanner;

/*
 *      求数组最大值，平均值，简单排序，求阶乘累加，
                          打印九九乘法表，打印杨辉三角，递归调用
 * 
 * 
 * 
 * */


public class array {

	public static void main(String[] args) {
		int[] arr =new int[]{20,-5,-9,22,5,6,10,30,115,80};
	
		//multiplication();
		//System.out.println(Arrays.toString(sortArray_bubble(arr))); 
		YHtriangle();
	}

	
	/*   获取数组最大值*/
	public static int getArrayMax(int[] arr) {
		int temp = arr[0];
		for (int i = 0; i < arr.length; i++) {
			for (int j = 0; j < i; j++) {
				if (arr[i] < arr[j]) {
					temp = arr[j];
				}
			}
		}
		return temp;
	}
	 /*  获取数组平均值  */
	public static double getArrayAverage(int[] arr){
		int sum=0;
		for(int i =0;i<arr.length;i++){
			sum +=arr[i];
		}
		double average =sum/arr.length;
		return average;
	}
	
	/* 排序  */
	/* 第一种：直接排序  */
	public static int[] sortArray_direct(int[] arr) {
		// int[] newArr = new int[arr.length];
		for (int i = 0; i < arr.length; i++) {
			for (int j = 0; j < i; j++) {
				if (arr[i] < arr[j]) {
					int temp = arr[j];
					arr[j] = arr[i];
					arr[i] = temp;
				}
			}
		}
		return arr;
	}

	/* 第二种：冒泡排序 */
	public static int[] sortArray_bubble(int[] arr) {
		for (int i = 0; i < arr.length; i++) {
			for (int j = i; j < arr.length; j++) {
				if (arr[i] < arr[j]) {
					int temp = arr[j];
					arr[j] = arr[i];
					arr[i] = temp;
				}
			}
		}
		return arr;
	}
	
	
	/*  阶乘累加   */
	public static long getFactorial(int n) {
		if (n == 1)
			return 1;
		return n * getFactorial(n - 1);
	}

	public static long getFactorialSum(int n) {
		if (n == 1)
			return 1;
		else
			return getFactorial(n) + getFactorialSum(n - 1);
	}
 
	/* 乘法表  */
	public static void multiplication() {
        System.out.println("请输入您想要的乘法表大小：");
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
		for (int i = 1; i <= n; i++) {
			for (int j = 1; j <= i; j++) {
				System.out.print(j + "*" + i + "=" + (i * j) + "\t");
			}
			System.out.println("\n");
		}
	}


    /*杨辉三角*/
	
	 public static void YHtriangle(){
		 Scanner sc =new Scanner(System.in);
		 System.out.println("输入您想要杨慧三角阶数：");
		 int num =sc.nextInt();
		 int[][] arr =new int[num][num];
		 for(int i=0;i<num;i++){
			 
			 for (int k = 0; k <num - i; k++) {
					System.out.print(" ");
				}
			 
			 for(int j=1;j<=i;j++){
				arr[0][0]=1;
			 arr[i][j]=arr[i-1][j-1]+arr[i-1][j]; 
			 System.out.print(arr[i][j]+" ");
			 }
			 System.out.println();
		 }
	 }
}
